Each device connected to a network, such as the internet, is assigned a unique, numerical internet protocol (IP) address such as 98.76.543.210. To send data, such as a web page request, from one device to another, a data packet containing the IP addresses of both devices is transferred across the network. The underlying technology that makes connection of devices to the internet possible is Internet Protocol version 4 (IPv4). Because IPv4 uses 32-bit internet addresses, it can support roughly 4.29 billion IP addresses. To date, nearly all of these addresses have been assigned. Internet Protocol version 6 (IPv6), the successor to IPv4, functions similarly to IPv4 by providing unique, numerical IP addresses to enable devices to communicate via the internet. However, in contrast to IPv4, IPv6 utilizes 128-bit addresses, allowing it to support 2^128 IP addresses. The transition from IPv4 to IPv6 has been slow and only a fraction of the web has switched to the new protocol. With some devices running on IPv4 and some running on IPv6, which essentially run as parallel networks, exchanging data requires special gateways, such as a Network Address Translation (NAT) router.
When a packet received from an IPv6 device is destined for an IPv4 device, a NAT64 router translates the packet from the IPv6 network into the IPv4 network. The translation includes translation of the IPv6 address into an IPv4 address. Because the IPv6 address space is much larger than the IPv4 address space, one-to-one mapping is not possible, and the router is required to maintain a map of the addresses. In stateful NAT64 mapping, the address mapping (or state table) is created when the first packet from the IPv6 network reaches the NAT64 router to be translated. After the state table has been created, packets can flow between the networks. However, maintaining the state table utilizes space and memory on the device that could be used for other processes. In addition, the size of the state table is limited by the resources of the device, such as available memory.